This invention relates to storing images in an image storage device and more particularly to dynamic management of embedded coded images.
Image compression using current JPEG standards can reduce the number of bits required to store the digitized images by encoding and quantizing the images at certain compression ratios. The compressed images use less memory but have the disadvantage of lowering image quality. Because each image is compressed at the same compression ratio, each image has the same image quality regardless of the amount of available memory in the image storage device.
Memory storage devices, such as digital cameras, can only store a limited number of pictures in a regular-quality mode and can store even fewer pictures in a high-quality mode. The number of stored pictures is usually fixed for each mode. If memory in the storage device is fall, newly captured images must either be discarded or previously stored images must be discarded to make room for the new images.
A user may want the option to take only one picture at the highest possible image quality or the option of taking multiple pictures at lower image quality. If the first pictures taken are compressed to conserve memory space, it is not then possible to convert these compressed images to a higher image quality, even if only one or two pictures are ever taken.
Accordingly, a need remains for a simple dynamic memory management system that maintains the highest possibly image quality for the number of images currently stored in memory.
The invention utilizes an embedded coding scheme to dynamically change the size of compressed images according to the number of stored pictures. A storage-limited device, such as digital camera, captures and converts images into embedded bitstreams. The images are initially stored as high quality images at low compression ratios to fully utilize available memory.
Room for a newly captured image is provided by truncating the existing embedded coded bitstreams of the previously stored images. The newly captured image is then encoded to fit into the space truncated from the currently stored images. The image storage device stores a virtually unlimited number of images by dynamically trading-off between the number of stored images and the image quality of each image.
Bitstreams encoded using an embedded image coding scheme can be truncated at arbitrary locations. As a result, the number and size of images stored in the memory device can be adaptively adjusted without having to decode and reencode the existing stored images. The amount of memory allotted for each stored image can then be more easily and quickly varied according to the available memory space.
The foregoing and other objects, features and advantages of the invention will become more readily apparent from the following detailed description of a preferred embodiment of the invention, which proceeds with reference to the accompanying drawings.